home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / keyb / stuft310.zip / STUFFIT.DOC < prev   
Text File  |  1991-04-29  |  16KB  |  459 lines

  1.  
  2.  
  3. StuffIt.Doc             Last updated by Roedy Green 1991 April 12
  4.  
  5.  
  6. PURPOSE
  7.  
  8. Stuffit is a utility that automates the keyboard.  You can
  9. provide a script of keystrokes and Stuffit will automatically
  10. type them into your application programs.  What makes Stuffit
  11. different from other keyboard macro programs:
  12.  
  13.   1. The keyboard remains fully functional the entire time
  14.      for additional manual input or correction.
  15.  
  16.   2. Stuffit works with intractable programs that throw away
  17.      keystrokes, bypass DOS etc.
  18.  
  19.   3. Stuffit watches the screen.  It does not just type
  20.      blindly.
  21.  
  22.   4. Stuffit watches the clock.  It can wake up your computer
  23.      at any time of the day and run programs.
  24.  
  25.   4. Stuffit can handle large scripts, up to 64K.
  26.  
  27.   5. Stuffit lets you generate more possible keystroke
  28.      chords (combinations) than other products.
  29.  
  30.   7. Assembler source code is provided, giving you the
  31.      option of adding new features to the program.
  32.  
  33.  
  34. COMMAND LINE PARAMETERS IN A NUTSHELL
  35.  
  36. +0                  Delay until the application has used up all
  37.                     the keystrokes in the type-ahead buffer.
  38.                     This is useful for applications that throw
  39.                     away keystrokes fed to it too quickly.
  40.                     This is also a handy way to flush any pending
  41.                     (uneaten) codes from a previous invocation of
  42.                     StuffIt. e.g.:
  43.                     StuffIt +0
  44.                     empties StuffIt's internal buffer.
  45.  
  46. +hh:mm:ss           time delay. (hours and minutes optional)
  47.                     +4   means wait 4 seconds (must be 0..59).
  48.                     +2:4 means wait 2 minutes and 4 seconds.
  49.                     +5:: means wait 5 hours.
  50.  
  51. =hh:mm:ss           delay until a specific time of day (24 hour
  52.                     format)
  53.                     (hours and minutes optional).
  54.                     =16:00:00 means wait till 4 PM.
  55.                     =00:00:00 means wait till midnight.
  56.                     =0   also means wait till midnight.
  57.  
  58. nn                  stuff a given character code
  59.                     e.g. 27 for Escape, 13 for Enter
  60.                     Only ASCII decimal numerics are accepted.
  61.                     There are no mnemonics for control
  62.                     characters.
  63.                     See ASCII code chart in your IBM AT tech
  64.                     Reference.
  65.  
  66. @nn                 stuff an extended code preceded by a null.
  67.                     Only numerics are accepted.  There are
  68.                     presently no mnemonics for these characters:
  69.                     e.g.  @68 = F10, @73 = PgUp etc.
  70.                     See table following for common codes.
  71.  
  72. cc:ss               specify both the decimal character and its
  73.                     scan code
  74.                     e.g. 43:74 to mean the Plus key on the
  75.                     numeric keypad, rather than the ordinary plus
  76.                     key. See table following for common pairs.
  77.  
  78. 'xxxx'              Stuff the characters between the quote marks.
  79.                     The string itself may not contain 's.
  80.  
  81. "xxxx"              Stuff the characters between the double quote
  82.                     marks.  The string itself may not contain "s.
  83.  
  84. F70,20,5,01,"Please enter your phone number"
  85.                     The absolute FIND command.
  86.                     Wait patiently for text to appear at col,
  87.                     row, length, attribute.  The attribute is
  88.                     optional.
  89.                     StuffIt searches starting at column 70, row
  90.                     20 for the string "Please enter your phone
  91.                     number".
  92.                     It waits until the string appears.  The 5
  93.                     means allow some slop.  The string may START
  94.                     anywhere in a window 5 characters wide.  It
  95.                     does not mean the whole string must FIT in a
  96.                     window five characters wide.  See note below
  97.                     on Stuffit's co-ordinate system.  The 01 is a
  98.                     rarely used feature.  It means, the match
  99.                     only counts if the string is displayed with
  100.                     decimal video attribute "01".
  101.  
  102. P10,1,160,01,"Please enter your phone number"
  103.                     The relative PROMPT command.
  104.                     Wait patiently for text to appear at relative
  105.                     col, row, length, attribute.  The attribute
  106.                     is optional.  Stuffit searches for the string
  107.                     "Please enter your phone number" starting
  108.                     left ten columns, and up one row from where
  109.                     the cursor is.  It waits until the string
  110.                     appears.  The 160 means allow some slop.  The
  111.                     string may START anywhere in a window 160
  112.                     characters wide (two lines).  It does not
  113.                     mean the whole string must FIT in the window.
  114.                     The 01 is a rarely used feature.  It means,
  115.                     the match only counts if the string is
  116.                     displayed with decimal video attribute "01".
  117.  
  118. !                   Reboot. (=0 ! will reboot at midnight.)
  119.  
  120. /F:MyFile.Txt       Read commands from MyFile.Txt instead for
  121.                     from the command line.  This command may be
  122.                     only be used on the command line, not nested
  123.                     in a file.
  124.  
  125. /B:512              Allocate room for 512 bytes for the script.
  126.                     You must allocate enough to store the ENTIRE
  127.                     script once it has been converted to a
  128.                     compact internal form.  On initial loading,
  129.                     StuffIt will use a minimum of 512 bytes, or
  130.                     automatically expand to whatever is necessary
  131.                     to needed to store the compact tokenized form
  132.                     of the input file.  If you want to save a few
  133.                     bytes you can prune it back using the /B:
  134.                     command.  Future versions may do this
  135.                     automatically.
  136.  
  137. /R                  will Remove (Unload) Stuffit from RAM.
  138.                     StuffIt is a TSR and so stays resident in
  139.                     RAM.  The overhead is minuscule, a mere 1232
  140.                     bytes, half of which is the buffer.
  141.  
  142.  
  143. CO-ORDINATE SYSTEM
  144.  
  145. The co-ordinate system Stuffit uses for the FIND command is very
  146. familiar to programmers who poke bytes into the video REGEN buffer 
  147. of display adapters, but it may seem a little strange to someone who
  148. has a mathematical background.  Mathematicians have two systems:
  149.  
  150.   1. X,Y co-ordinates where the origin 0,0 is in the lower
  151.      left corner.
  152.  
  153.   2. Matrices indexed by row and column.  Usually rows and
  154.      columns are numbered starting with 1.  Rows are
  155.      numbered starting at the top.  Traditionally co-
  156.      ordinates are given in the order row, then column.
  157.  
  158. Stuffit uses a hybrid of these two schemes.  It uses row and
  159. column, but starts numbering at 0,0 instead of 1,1 in the upper
  160. left corner.  Stuffit uses column, row order.
  161.  
  162. For relative positioning in the PROMPT command, left and up are
  163. considered positive.  This is the exact opposite convention to
  164. what the FIND command uses.  Beware!
  165.  
  166.  
  167. EXAMPLES:
  168.  
  169. Format floppies alternately in A: and B:, without answering any
  170. prompts:
  171.  
  172. REM EXAMPLE 1 FLOPPY FORMATTER
  173. echo off
  174. :loop
  175. Stuffit ' ' +0 13 P25,0,5,"Format another" +1 'N' 13
  176. format A:
  177. Stuffit ' ' +0 13 P25,0,5,"Format another" +1 'N' 13
  178. format B:
  179. goto loop
  180.  
  181.  
  182. Use one PC for both backup and Host GW on a LAN:
  183.  
  184. REM EXAMPLE 2 AUTOEXEC.BAT
  185. Rem Start backup program in batch mode:
  186. Rem Use Stuffit, to reboot GW program at midnight
  187. Stuffit =00:00:00 !
  188. Rem Start GW program
  189. LAN-GW
  190.  
  191.  
  192.  
  193. TROUBLE SHOOTING
  194.  
  195. PROBLEM: Stuffit fails to send all the keystrokes.  Only some
  196. keystrokes get through.
  197.  
  198. SOLUTION: Your application is clearing the type-ahead buffer from
  199. time to time.  You can outfox it by using the +2 command to
  200. insert a short delay AFTER the program has c